A variety of licensing models can be employed to license software applications. Licensing information, sometimes stored locally, remotely, or elsewhere, is typically referenced to determine the state of a software license. The license information may indicate, for example, that a license is current, expired, unpaid, or the like. The subject application can then be presented, or in some cases not presented at all, based on the state of the license.
In a familiar example, many productivity applications are programmed upon launch to process locally stored license information in order to determine their respective license states. A fully paid license may grant a user with full access to a particular application, while an unpaid license for that application may relegate the user to a limited application experience. In the latter case, many applications prompt the user to obtain a license by way of a website, application store, or other purchase environment.
Indeed, an increasing number of applications are themselves obtained through application stores for download and execution on mobile devices, such as cell phones, tablets, laptop computers, and other mobile appliances. Upon obtaining an application license through an application store, licensing information is conveyed along with the application to the target device and stored in a segregated memory location allocated to that application. Launching the application may trigger analysis of the license information so that the application can be presented in accordance with its license state.